Адміністрація вирішила продати даний сайт. За детальною інформацією звертайтесь за адресою: rozrahu@gmail.com

Робота з масивами. Використання функцій

Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
ІКТА
Факультет:
ЗІ
Кафедра:
Не вказано

Інформація про роботу

Рік:
2013
Тип роботи:
Звіт до лабораторної роботи
Предмет:
Програмування

Частина тексту файла

МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ «ЛЬВІВСЬКА ПОЛІТЕХНІКА» ІКТА кафедра З В І Т до лабораторної роботи №4 з курсу: «Технології програмування» на тему: «Робота з масивами. Використання функцій» Варіант № 15 Мета роботи – вивчити елементи мови Сі, рядки, рядкові константи, принципи потокового вводу-виводу, стандартні файли і функції для роботи з ними. Завдання Дано текстовий файл, в якому міститься програма мовою С (Лабораторна робота №3). Скласти блок-схеми алгоритмів та програму мовою С для обробки текстового файлу з використанням розроблених функцій для роботи зі стрічками. Оформити виконання одного із завдань у вигляді підпрограми. Словами є слова в коментарях, назви ідентифікаторів, зарезервовані слова, які розділяються між собою згідно із синтаксисом мови С. Дані для роботи беруться з табл.1 за вказівкою викладача.. Таблиця 1 № п/п Завдання  15 Сформувати і вивести на екран текстовий файл в якому вилучити слова “while”, “if”, “for”. Вивести на екран рядки в яких містяться цифри і в кінці рядка дописати їх суму.   Блок-схема алгоритму основної програми Список ідентифікаторів, констант, змінних, функцій, використаних у блок-схемі алгоритму і програмі, та їх пояснення str,n – символьні рядки, типу char; fp1, fp2 – вказівники на потоки файлів; fopen() – відкриває файл із заданим режимом відкриття; fprintf() – функція виводу даних у файл; fgets() – функція зчитування рядка з файлу; fputc()– запис одного символу в файл; puts() – виведення на екран. Текст програми #include <stdio.h> #include <stdlib.h> #include <string.h> #define n 100 FILE *file1,*file2; char str[n]; void string (char *str); void rotate(int i,int kill,char *str); int main(void) { file1 = fopen("input.txt","r"); file2 = fopen("output.txt","w+"); if(file1 != NULL) { while( fgets(str,n,file1)!= NULL) { string(str); } fclose(file1); fclose(file2); } scanf("%c"); } void string(char *str) { char FOR[]="for"; char IF[] = "if"; char WHILE[] = "while"; int i=0; int sum=0; str[strlen(str)-1]=' '; for(i=0;i<strlen(str);i++) { if(str[i]=='0') sum+=0; if(str[i]=='1') sum+=1; if(str[i]=='2') sum+=2; if(str[i]=='3') sum+=3; if(str[i]=='4') sum+=4; if(str[i]=='5') sum+=5; if(str[i]=='6') sum+=6; if(str[i]=='7') sum+=7; if(str[i]=='8') sum+=8; if(str[i]=='9') sum+=9; /// while bool flag = false; for(int j=i;j<strlen(str);j++) { if(str[j]==WHILE[j-i]) { flag=true; if(j-i==strlen(WHILE)-1) break; } else { flag=false; break; } } if(flag==true) rotate(i,strlen(WHILE),str); /// for flag = false; for(int j=i;j<strlen(str);j++) { if(str[j]==FOR[j-i]) { flag=true; if(j-i==strlen(FOR)-1) break; } else { flag=false; break; } } if(flag==true) rotate(i,strlen(FOR),str); /// if flag = false; for(int j=i;j<strlen(str);j++) { if(str[j]==IF[j-i]) { flag=true; if(j-i==strlen(IF)-1) break; } else { flag=false; break; } } if(flag==true) rotate(i,strlen(IF),str); } printf(" %s <= sum = %d \n",str,sum); fprintf(file2," %s <= sum = %d \n",str,sum); } void rotate(int i,int kill,char *str) { for(int j=i;j<strlen(str)-kill;j++) str[j]=str[j+kill]; getchar(); }
Антиботан аватар за замовчуванням

25.01.2014 19:01

Коментарі

Ви не можете залишити коментар. Для цього, будь ласка, увійдіть або зареєструйтесь.

Завантаження файлу

Якщо Ви маєте на своєму комп'ютері файли, пов'язані з навчанням( розрахункові, лабораторні, практичні, контрольні роботи та інше...), і Вам не шкода ними поділитись - то скористайтесь формою для завантаження файлу, попередньо заархівувавши все в архів .rar або .zip розміром до 100мб, і до нього невдовзі отримають доступ студенти всієї України! Ви отримаєте грошову винагороду в кінці місяця, якщо станете одним з трьох переможців!
Стань активним учасником руху antibotan!
Поділись актуальною інформацією,
і отримай привілеї у користуванні архівом! Детальніше

Оголошення від адміністратора

Антиботан аватар за замовчуванням

пропонує роботу

Admin

26.02.2019 12:38

Привіт усім учасникам нашого порталу! Хороші новини - з‘явилась можливість кожному заробити на своїх знаннях та вміннях. Тепер Ви можете продавати свої роботи на сайті заробляючи кошти, рейтинг і довіру користувачів. Потрібно завантажити роботу, вказати ціну і додати один інформативний скріншот з деякими частинами виконаних завдань. Навіть одна якісна і всім необхідна робота може продатися сотні разів. «Головою заробляти» продуктивніше ніж руками! :-)

Новини